package com.k7.mobile.platform.bo;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import com.k7.mobile.platform.dataobject.UserDO;
import com.k7.mobile.platform.exception.BOException;
import com.qike.java.pojo.User;

/**
 * 用户回复BO
 * @author lx
 *
 */
public interface IUserBO {
	/**
	 * 创建用户
	 * @param userDO
	 * @throws BOException
	 */
	public void addUser(UserDO userDO) throws BOException;
	
	/**
	 * 修改用户信息
	 * @param userDO
	 * @throws BOException
	 */
	public void updateUser(UserDO userDO) throws BOException;
	
	/**
	 * 根据id获取用户信息
	 * @param userId
	 * @return
	 * @throws BOException
	 */
	public UserDO getUserById(Long userId) throws BOException;
	
	
	/**
	 * 根据用户id获取用户列表信息
	 * @param queryDO
	 * @return
	 * @throws BOException
	 */
	public List<UserDO> getUserList(UserDO queryDO) throws BOException;
	
	/**
	 * 判断用户是否登录
	 * @param request
	 * @return null未登录 user 登录用户信息
	 */
	public User isLogin(HttpServletRequest request);
	
	/**
	 * 根据用户ID从7K接口获取用户信息
	 * @param userId
	 * @return
	 */
	public User get7kUser(Long userId);
	

	/**
	 * 批量获取用户信息（7K API）
	 * @param uids
	 * @return
	 */
	List<User>  getUsers(List<String> uids);

}
